package com.link2room.rodimus.dto.result.base;

import com.link2room.common.annotation.L2RDatetimeString;
import com.link2room.common.annotation.L2RDes;
import com.link2room.common.dto.result.base.BaseDto;
import com.link2room.rodimus.constant.RodimusDescriptPrefixKeyConstant;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;

import java.math.BigDecimal;
import java.util.Date;
import java.util.List;


/**
 * Created by VegetaKo on 2017/1/20.
 */
@ApiModel
public class MallOrderBaseDto extends BaseDto {
    @ApiModelProperty(value = "订单号")
    private String orderCode;
    @ApiModelProperty(value = "积分")
    private BigDecimal point;
    @ApiModelProperty(value = "价格")
    private BigDecimal price;
    @ApiModelProperty(value = "数量")
    private Integer amount;
    @ApiModelProperty(value = "会员号")
    private String memberNo;
    @ApiModelProperty(value = "商品类型")
    private String goodType;
    @ApiModelProperty(value = "状态")
    private String sta;
    @ApiModelProperty(value = "状态描述")
    @L2RDes(value = RodimusDescriptPrefixKeyConstant.MALL_STA,source = "sta")
    private String staDes;
    @ApiModelProperty(value = "是否需要发货")
    private String needExpress;
    private String expressAddress;
    private String expressMan;
    private String expressMobile;
    private String expressSta;
    private String expressProvider;
    private String expressNo;
    private String expressRemark;
    @ApiModelProperty(value = "发票抬头")
    private String invoiceTitle;
    @ApiModelProperty(value = "发票号")
    private String invoiceNo;
    @ApiModelProperty(value = "发票备注")
    private String invoiceRemark;
    private String logo;
    @ApiModelProperty(value = "商品订单价格详情")
    private List< MallOrderPriceDto> mallOrderPriceDtos;
    @ApiModelProperty(value = "预下单号")
    private String l2rPrepayId;
    private String remark;
    @ApiModelProperty(value = "分销员编号")
    private String salesmanNo;
    @ApiModelProperty(value = "商品概述")
    private String goodContant;
    @ApiModelProperty(value = "积分支付状态")
    private String pointPaySta;
    @ApiModelProperty(value = "钱支付状态")
    private String moneyPaySta;
    @ApiModelProperty(value = "钱支付类型")
    private String moneyPayType;
    @ApiModelProperty(value = "钱支付流水号")
    private String moneyTaNo;
    private Date createDatetime;
    @ApiModelProperty(value = "取消时间")
    private Date cancelDate;
    @L2RDatetimeString(source = "createDatetime")
    private String createDateTimeStr;
    private String orderType;
    private String productCode;


    public String getOrderCode() {
        return orderCode;
    }

    public void setOrderCode(String orderCode) {
        this.orderCode = orderCode;
    }

    public BigDecimal getPoint() {
        return point;
    }

    public void setPoint(BigDecimal point) {
        this.point = point;
    }

    public BigDecimal getPrice() {
        return price;
    }

    public void setPrice(BigDecimal price) {
        this.price = price;
    }

    public Integer getAmount() {
        return amount;
    }

    public void setAmount(Integer amount) {
        this.amount = amount;
    }

    public String getMemberNo() {
        return memberNo;
    }

    public void setMemberNo(String memberNo) {
        this.memberNo = memberNo;
    }

    public String getGoodType() {
        return goodType;
    }

    public void setGoodType(String goodType) {
        this.goodType = goodType;
    }

    public String getSta() {
        return sta;
    }

    public void setSta(String sta) {
        this.sta = sta;
    }

    public String getStaDes() {
        return staDes;
    }

    public void setStaDes(String staDes) {
        this.staDes = staDes;
    }

    public String getNeedExpress() {
        return needExpress;
    }

    public void setNeedExpress(String needExpress) {
        this.needExpress = needExpress;
    }

    public String getExpressAddress() {
        return expressAddress;
    }

    public void setExpressAddress(String expressAddress) {
        this.expressAddress = expressAddress;
    }

    public String getExpressMan() {
        return expressMan;
    }

    public void setExpressMan(String expressMan) {
        this.expressMan = expressMan;
    }

    public String getExpressMobile() {
        return expressMobile;
    }

    public void setExpressMobile(String expressMobile) {
        this.expressMobile = expressMobile;
    }

    public String getExpressSta() {
        return expressSta;
    }

    public void setExpressSta(String expressSta) {
        this.expressSta = expressSta;
    }

    public String getExpressProvider() {
        return expressProvider;
    }

    public void setExpressProvider(String expressProvider) {
        this.expressProvider = expressProvider;
    }

    public String getExpressNo() {
        return expressNo;
    }

    public void setExpressNo(String expressNo) {
        this.expressNo = expressNo;
    }

    public String getExpressRemark() {
        return expressRemark;
    }

    public void setExpressRemark(String expressRemark) {
        this.expressRemark = expressRemark;
    }

    public String getInvoiceTitle() {
        return invoiceTitle;
    }

    public void setInvoiceTitle(String invoiceTitle) {
        this.invoiceTitle = invoiceTitle;
    }

    public String getInvoiceNo() {
        return invoiceNo;
    }

    public void setInvoiceNo(String invoiceNo) {
        this.invoiceNo = invoiceNo;
    }

    public String getInvoiceRemark() {
        return invoiceRemark;
    }

    public void setInvoiceRemark(String invoiceRemark) {
        this.invoiceRemark = invoiceRemark;
    }

    public String getLogo() {
        return logo;
    }

    public void setLogo(String logo) {
        this.logo = logo;
    }

    public List<MallOrderPriceDto> getMallOrderPriceDtos() {
        return mallOrderPriceDtos;
    }

    public void setMallOrderPriceDtos(List<MallOrderPriceDto> mallOrderPriceDtos) {
        this.mallOrderPriceDtos = mallOrderPriceDtos;
    }

    public String getL2rPrepayId() {
        return l2rPrepayId;
    }

    public void setL2rPrepayId(String l2rPrepayId) {
        this.l2rPrepayId = l2rPrepayId;
    }

    public String getRemark() {
        return remark;
    }

    public void setRemark(String remark) {
        this.remark = remark;
    }

    public String getSalesmanNo() {
        return salesmanNo;
    }

    public void setSalesmanNo(String salesmanNo) {
        this.salesmanNo = salesmanNo;
    }

    public String getGoodContant() {
        return goodContant;
    }

    public void setGoodContant(String goodContant) {
        this.goodContant = goodContant;
    }

    public String getPointPaySta() {
        return pointPaySta;
    }

    public void setPointPaySta(String pointPaySta) {
        this.pointPaySta = pointPaySta;
    }

    public String getMoneyPaySta() {
        return moneyPaySta;
    }

    public void setMoneyPaySta(String moneyPaySta) {
        this.moneyPaySta = moneyPaySta;
    }

    public String getMoneyPayType() {
        return moneyPayType;
    }

    public void setMoneyPayType(String moneyPayType) {
        this.moneyPayType = moneyPayType;
    }

    public String getMoneyTaNo() {
        return moneyTaNo;
    }

    public void setMoneyTaNo(String moneyTaNo) {
        this.moneyTaNo = moneyTaNo;
    }

    public Date getCreateDatetime() {
        return createDatetime;
    }

    public void setCreateDatetime(Date createDatetime) {
        this.createDatetime = createDatetime;
    }

    public String getCreateDateTimeStr() {
        return createDateTimeStr;
    }

    public void setCreateDateTimeStr(String createDateTimeStr) {
        this.createDateTimeStr = createDateTimeStr;
    }

    public Date getCancelDate() {
        return cancelDate;
    }

    public void setCancelDate(Date cancelDate) {
        this.cancelDate = cancelDate;
    }

    public String getOrderType() {
        return orderType;
    }

    public void setOrderType(String orderType) {
        this.orderType = orderType;
    }

    public String getProductCode() {
        return productCode;
    }

    public void setProductCode(String productCode) {
        this.productCode = productCode;
    }

    @Override
    public String toString() {
        return "MallOrderBaseDto{" +
                "orderCode='" + orderCode + '\'' +
                ", point=" + point +
                ", price=" + price +
                ", amount=" + amount +
                ", memberNo='" + memberNo + '\'' +
                ", goodType='" + goodType + '\'' +
                ", sta='" + sta + '\'' +
                ", staDes='" + staDes + '\'' +
                ", needExpress='" + needExpress + '\'' +
                ", expressAddress='" + expressAddress + '\'' +
                ", expressMan='" + expressMan + '\'' +
                ", expressMobile='" + expressMobile + '\'' +
                ", expressSta='" + expressSta + '\'' +
                ", expressProvider='" + expressProvider + '\'' +
                ", expressNo='" + expressNo + '\'' +
                ", expressRemark='" + expressRemark + '\'' +
                ", invoiceTitle='" + invoiceTitle + '\'' +
                ", invoiceNo='" + invoiceNo + '\'' +
                ", invoiceRemark='" + invoiceRemark + '\'' +
                ", logo='" + logo + '\'' +
                ", mallOrderPriceDtos=" + mallOrderPriceDtos +
                ", l2rPrepayId='" + l2rPrepayId + '\'' +
                ", remark='" + remark + '\'' +
                ", salesmanNo='" + salesmanNo + '\'' +
                ", goodContant='" + goodContant + '\'' +
                ", pointPaySta='" + pointPaySta + '\'' +
                ", moneyPaySta='" + moneyPaySta + '\'' +
                ", moneyPayType='" + moneyPayType + '\'' +
                ", moneyTaNo='" + moneyTaNo + '\'' +
                ", createDatetime=" + createDatetime +
                ", cancelDate=" + cancelDate +
                ", createDateTimeStr='" + createDateTimeStr + '\'' +
                ", orderType='" + orderType + '\'' +
                ", productCode='" + productCode + '\'' +
                '}';
    }
}
